In the field of semiconductor integrated circuits, increasing integration of circuits is continuing as a result of the miniaturization of the elements. As the elements are miniaturized, it is not merely the case that the operational speed of the elements increases, but also the number of elements which can be placed on a single chip increases, so that the functions per chip increase. Microprocessor LSI is a good example of this; in current leading edge microprocessors, the element dimensions are on the order of 0.5 microns, and the number of elements per chip can reach several million.
However, in concert with the miniaturization of the elements and the increase in integration, a number of problems have come to the force. For example, a new problem has developed related to how to lay out and form the wiring which is necessary to connect individual elements among these millions of elements. As a result of such problems, the current stage of development is such that the further integration of elements will be extremely difficult. Accordingly, little improvement in LSI chip functions is expected in the future.
On the other hand, with integration, the operational speed of the LSI has also increased. In microprocessors, those having operational clock frequencies of a few hundred MHz have become common. In the near future it is inevitable that demands for clock frequencies of 1 GHz or more will emerge. In this situation, clock skew has especially become a problem. The distribution of a GHz clock signal without a time lag through the entirety of a 1 cm.sup.2 chip is a very difficult problem. In order to realize LSI having operational speeds of GHz or greater, it is necessary to abandon the clock signal central control system, to adopt self-timing mechanisms, and to conduct timing while carrying out handshakes between nearby blocks. Self-timing mechanisms have found applications in elastic pipelines in data drive type processors (S. Komori, H. Taketa, T. Tamura, F. Asai, T. Ohno, O. Tomisawa, T. Yamasaki, K. Shima, K. Asada, and Terada, "An Elastic Pipeline Mechanism by Self-Timed Circuits," IEEE J. Solid-State Circuits, Vol. 23, No. 1, pp. 111-117, 1988), and the like. A schematic diagram is shown in FIG. 9. In the figure, the circuit indicated by C is a control circuit which conducts handshakes by means of a Send signal and an Ack signal. This C (coincidence) circuit is a type of flip flop, and the circuit diagram and truth table thereof are shown in FIG. 10. When the sending signal and the ackin inversion signal both have a value of 1, the value of the sendout signal is set to 1, while when both of these have a value of 0, the sendout signal is set to 0, and in other cases, the immediately previous sendout signal is maintained.
The basics of the handshake circuit are shown by the C circuit of FIG. 10; however, in order to realize data transmission having higher reliability, higher speed, and higher throughput, the improved C circuit of FIG. 11 is proposed. The circuit comprises 2 flip flop circuits. This circuit realizes a complete handshake. That is to say, the circuit realizes the following functions: 1) the rise of a sendin signal from the previous stage, 2) the fall of an ackout inversion signal to the previous stage, and the rise of a sendout signal to the following stage, 3) the fall of a sendin signal from the previous stage, and 4) the rise of an ackout inversion signal to the previous stage, and furthermore, the fall of a sendout signal to the fall stage at any time by means of the stopping of an ackin inversion signal from the following stage. By means of this handshake circuit, self-timing data transmission becomes possible, and LSI operation at a speed of GHz or more becomes possible.
However, handshake circuits for self-timing executed using conventional technology require 20 transistors in the case of the original C circuit of FIG. 10, and 24 transistors for the improved C circuit of FIG. 11, so that the handshake circuitry becomes undesirably large. The handshake circuitry is excess circuitry having no connection with the fundamental calculation functions of the LSI, and is thus overhead; when conventional technology is employed, this overhead becomes undesirably large, and this limits the degree of integration and the functions of the LSI.
In order to realize ultra high speed, ultra high integration, and highly functional LSI, the present invention has as an object there of to realize a semiconductor integrated circuit having handshake functions by using a smaller number of elements and a smaller chip area. Furthermore, the present invention is not limited to handshake circuits; with respect to other semiconductor circuits using flip flop functions, it has as an object thereof to provide a feedback circuit which is capable of realizing such circuitry using a smaller number of elements and smaller chip area.